#ifndef __BSP_GPIO_H_
#define __BSP_GPIO_H_

#include "main.h"
#include "bsp_include.h"

#define		KEY_LEFT_PUSH_DOWN		(U8)(HAL_GPIO_ReadPin(KEY_Left_GPIO_Port,KEY_Left_Pin)==GPIO_PIN_RESET)
#define 	KEY_MID_PUSH_DOWN		(U8)(HAL_GPIO_ReadPin(KEY_Left_GPIO_Port,KEY_Mid_Pin)==GPIO_PIN_RESET)
#define 	KEY_RIGHT_PUSH_DOWN	(U8)(HAL_GPIO_ReadPin(KEY_Left_GPIO_Port,KEY_Right_Pin)==GPIO_PIN_RESET)

#define 	KEY_LONG_MS					pdMS_TO_TICKS(2000);
#define 	KEY_SHORT_MS				pdMS_TO_TICKS(50);


void KeyCheck_CallbackRegister(uint8_t key_id,Register_FunctionId_t register_id,DriverHandler_t func);

#endif